M5 ToF
M5 100m走 測定器(https://protopedia.net/prototype/2356) の改良を行っている。
競合:
Witty, https://sport-science.jp/products/detail/16642/
光電管, https://ricloud.session.jp/
ver0.5.1 
下記コンセプトで作成
機能:電池駆動式、非防水、ボタンでモード切換え、ディスプレイに時間表示、TypeC充電可、ソーラー充電可
PCB
https://scrapbox.io/files/65672a4db484210023134d0d.pngx
PCB 3D Model
https://scrapbox.io/files/65673731d0ea7a00247ac883.png https://scrapbox.io/files/656737447380210023ed9c71.png
3D Model
https://scrapbox.io/files/656736f855ab24002427cea4.png https://scrapbox.io/files/65673756019f790023136490.png
回路図
https://scrapbox.io/files/656738b02ee29b0023ef2f60.png
No 対応 修正事項
1 済 基板裏面にI2Cディスプレイが付くようにする事、四角の端子で基板に留める事 → カバーに2.2φタッピングビスで止めることにした。ピンは細ピンヘッダでPCBにはんだ付け。
2 済 基板裏面にテスト用LEDが出るようにする事。二色は不可。
3 済 基板裏面にスイッチ1(テスト用)、スイッチ2(テスト用)が出るようにする事
4 部品ユニット番号で部品が分かるようにする事。
5 内部のDIPスイッチでStarter/Wrapperが切替られるようにする事。可能ならStopperも
6 済 バッテリースイッチで電源ON/OFF出来る事
7 済 電源スイッチOFFでも低VFショットキバリアダイオードで充電可能にする事
8 済 XIAOの都合上 D8/D9はPullupしておき、スタートやテストのGNDスイッチに使う。
9 起動時のD8/D9のLOW状態でStarter/Wrapper/Stopperを変えられるようにする。
10 済 電源スイッチOFF時もショットキーバリアダイオードを設けて充電できるようにすること。
12/19 基盤が届いたので筐体を3Dモデリングし、最低限必要な部品を実装してみる。
注意点:
・Groveコネクタが逆転しているので配線入れ替えで対応した。
AI:
・ソフトの書き込みと実行
https://scrapbox.io/files/6581ac6686348d00239132d8.pnghttps://scrapbox.io/files/6581ac50e0625b0023703348.png
2023/12/28
■基盤v0.51から0.52の変更点
・ホールにパッドを付与し直径1mmへ変更
ビアメソッドでハンダづけするとXIAO ESP32C3と基盤のハンダがついていなかった(左)。リフローすれば良かったが今回は環境が無かった。
ビアメソッドでもXIAOと基盤のハンダがつくように、パッドを付与し直径1mmとした。(右)
https://scrapbox.io/files/658d68ed5b934b0024cf65d0.pnghttps://scrapbox.io/files/658d6928bba4c30024794205.png
・SSD1306への電源ラインが無かったため追加
・Groveコネクタを反転し、ピンの入れ替えを無くせるようにした
https://scrapbox.io/files/658d6aeadbc75d0023fad6cb.png
■問題点
・ESP32C3のCPUが1つであるため、AsyncWebServerのsemaphore付近でエラーが出る。100m測定時は超音波センサのみ稼働し、無線通信とWebサーバーの機能を停止すればよいが難度が高そう。別のHTTP serverを使うかHTTPを使わずにBTやESP-NOWを使うか。→ Webサーバー無しでESP-NOWがやはり良いか? それともAPは黄色い基盤にするか? SSD1306と超音波センサがまともに動く基盤が無いので、先に黄色い基盤のAPを実装する
12/30
・C3の1コアで処理ができない場合は、S3で対応する。10個で単価6.5$。
https://scrapbox.io/files/659027a29aef1800259a0e74.png